home *** CD-ROM | disk | FTP | other *** search
- unit Unit1;
- interface
- uses
- Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs,
- ExtCtrls, StdCtrls, Buttons, ComCtrls, MMSystem, broken, Menus;
-
- type
- TMainForm = class(TForm)
- PageControl1: TPageControl;
- TabSheet1: TTabSheet;
- Panel1: TPanel;
- EditURL: TEdit;
- EditDepth: TEdit;
- BitBtn1: TBitBtn;
- BitBtn2: TBitBtn;
- CheckBoxLocalDisk: TCheckBox;
- Label1: TLabel;
- Label2: TLabel;
- Label3: TLabel;
- Label4: TLabel;
- Splitter1: TSplitter;
- ListBoxChecking: TListBox;
- MemoChecked: TMemo;
- TabSheet2: TTabSheet;
- MemoSuspect: TMemo;
- TabSheet3: TTabSheet;
- MemoBroken: TMemo;
- TabSheet4: TTabSheet;
- MemoExternal: TMemo;
- TabSheet5: TTabSheet;
- MemoMailTo: TMemo;
- TabSheet6: TTabSheet;
- MemoNews: TMemo;
- TabSheet7: TTabSheet;
- MemoFTP: TMemo;
- StatusBar1: TStatusBar;
- BrokenLink1: TBrokenLink;
- CheckBoxCGI: TCheckBox;
- PopupMenuSuspected: TPopupMenu;
- PopupMenuBrokenLinks: TPopupMenu;
- PopupMenuExternalLinks: TPopupMenu;
- PopupMenuMailTo: TPopupMenu;
- PopupMenuNews: TPopupMenu;
- PopupMenuFTP: TPopupMenu;
- PopupMenuHomePage: TPopupMenu;
- Save1: TMenuItem;
- Save2: TMenuItem;
- Save3: TMenuItem;
- Save4: TMenuItem;
- Save5: TMenuItem;
- Save6: TMenuItem;
- Save7: TMenuItem;
- SaveDialog: TSaveDialog;
- About1: TMenuItem;
- About2: TMenuItem;
- About3: TMenuItem;
- About4: TMenuItem;
- About5: TMenuItem;
- About6: TMenuItem;
- About7: TMenuItem;
- procedure Splitter1Moved(Sender: TObject);
- procedure BitBtn1Click(Sender: TObject);
- procedure BitBtn2Click(Sender: TObject);
- procedure BrokenLink1Update;
- procedure SaveClick(Sender: TObject);
- procedure AboutClick(Sender: TObject);
- private
- StartTime: LongInt;
- end;
-
- var
- MainForm: TMainForm;
-
- implementation
- {$R *.DFM}
-
- procedure TMainForm.Splitter1Moved(Sender: TObject);
- begin
- Label3.Left := Splitter1.Left + 7
- end;
-
- procedure TMainForm.BitBtn1Click(Sender: TObject);
- var
- Depth: Integer;
- begin
- (Sender as TBitBtn).Enabled := False;
- try
- try
- Depth := StrToInt(EditDepth.Text);
- except
- Depth := 0
- end;
- StartTime := timeGetTime;
- if CheckBoxLocalDisk.Checked then
- BrokenLink1.LCheckURL(EditURL.Text,Depth)
- else
- BrokenLink1.NCheckURL(EditURL.Text,CheckBoxCGI.Checked,Depth)
- finally
- (Sender as TBitBtn).Enabled := True
- end
- end;
-
- procedure TMainForm.BitBtn2Click(Sender: TObject);
- begin
- BrokenLink1.Interrupted := True
- end;
-
- procedure TMainForm.BrokenLink1Update;
- var
- Min,Sec: LongInt;
- begin
- ListBoxChecking.Items := BrokenLink1.Checking;
- MemoChecked.Lines := BrokenLink1.Checked;
- MemoSuspect.Lines := BrokenLink1.Suspect;
- MemoBroken.Lines := BrokenLink1.Broken;
- MemoExternal.Lines := BrokenLink1.HTTP;
- MemoMailTo.Lines := BrokenLink1.MailTo;
- MemoNews.Lines := BrokenLink1.News;
- MemoFTP.Lines := BrokenLink1.FTP;
- case BrokenLink1.Broken.Count of
- 0: StatusBar1.SimpleText := ' No broken links';
- 1: StatusBar1.SimpleText := ' One broken link';
- else
- StatusBar1.SimpleText := Format(' %d broken links',[BrokenLink1.Broken.Count]);
- end;
- if BrokenLink1.HTTP.Count > 0 then
- StatusBar1.SimpleText := StatusBar1.SimpleText +
- Format(' and %d external link(s)',[BrokenLink1.HTTP.Count]);
- Sec := (timeGetTime - StartTime) div 1000;
- Min := Sec div 60;
- Sec := Sec mod 60;
- StatusBar1.SimpleText := StatusBar1.SimpleText + Format(' in %d:%.2d.',[Min,Sec]);
- Label3.Caption := Format('%d (Sub)pages checked:',[BrokenLink1.Checked.Count]);
- Application.ProcessMessages
- end;
-
- procedure TMainForm.SaveClick(Sender: TObject);
- begin
- with SaveDialog do
- begin
- Title := (Sender AS TMenuItem).Hint;
- if Execute then
- case (Sender AS TComponent).Tag of
- 1: MemoChecked.Lines.SaveToFile(FileName);
- 2: MemoSuspect.Lines.SaveToFile(FileName);
- 3: MemoBroken.Lines.SaveToFile(FileName);
- 4: MemoExternal.Lines.SaveToFile(FileName);
- 5: MemoMailTo.Lines.SaveToFile(FileName);
- 6: MemoNews.Lines.SaveToFile(FileName);
- 7: MemoFTP.Lines.SaveToFile(FileName)
- end
- end
- end;
-
- procedure TMainForm.AboutClick(Sender: TObject);
- begin
- ShowMessage('InterBob 0.9 (c) 1997 by Bob Swart (aka Dr.Bob - www.drbob42.com)')
- end;
-
- end.
-